<?php
require_once '/../Modele/BaseModel.php';
require_once('ForumSection.php');
require_once('ForumMessage.php');

/**
 * @access public
 * @author Joana
 * @package Mapping_Dead.Modèle
 */
class ForumTopic extends BaseModel {

    /**
     * @AttributeType int
     */
    protected $idForumTopic;

    /**
     * @AttributeType int
     */
    protected $idSection;

    /**
     * @AttributeType String
     */
    protected $nomTopic;
    
    /**
     * @AttributeType int
     */
    protected $idUser;
    /**
     * @AttributeType String
     */
    protected $dateCreation;

    /**
     * @AttributeType int
     */
    protected $droitVisite;


    public function __construct($id = null) {
        parent::__construct($id);
    }

    /**
     * @access public
     * @param String libelle
     * @ParamType libelle String
     */
    public function Forum_topic($libelle) {
        // Not yet implemented
    }
    function getIdForumTopic() {
        return $this->idForumTopic;
    }

    function getIdSection() {
        return $this->idSection;
    }


    function getIdUser() {
        return $this->idUser;
    }

    function getDroitVisite() {
        return $this->droitVisite;
    }

    function setIdForumTopic($idForumTopic) {
        $this->idForumTopic = $idForumTopic;
    }

    function setIdSection($idSection) {
        $this->idSection = $idSection;
    }


    function setIdUser($idUser) {
        $this->idUser = $idUser;
    }

    function setDroitVisite($droitVisite) {
        $this->droitVisite = $droitVisite;
    }

        /**
     * @access public
     * @return int
     * @ReturnType int
     */
    public function getIdTopic() {
        return $this->idTopic;
    }

    /**
     * @access public
     * @param int idTopic
     * @return void
     * @ParamType idTopic int
     * @ReturnType void
     */
    public function setIdTopic($idTopic) {
        $this->idTopic = $idTopic;
    }



    /**
     * @access public
     * @param Message[] messages
     * @return void
     * @ParamType messages Message[]
     * @ReturnType void
     */
    public function getDateCreation() {
        return $this->dateCreation;
    }

    /**
     * @access public
     * @param String dateCreation
     * @return void
     * @ParamType dateCreation String
     * @ReturnType void
     */
    public function setDateCreation($dateCreation) {
        $this->dateCreation = $dateCreation;
    }

    /**
     * @access public
     * @return String
     * @ReturnType String
     */
    public function getDateCloture() {
        return $this->dateCloture;
    }

    /**
     * @access public
     * @param String dateCloture
     * @return void
     * @ParamType dateCloture String
     * @ReturnType void
     */
    public function setDateCloture($dateCloture) {
        $this->dateCloture = $dateCloture;
    }

    /**
     * @access public
     * @return String
     * @ReturnType String
     */
    public function getNomTopic() {
        return $this->nomTopic;
    }

    /**
     * @access public
     * @param String libelleTopic
     * @return void
     * @ParamType libelleTopic String
     * @ReturnType void
     */
    public function setNomTopic($nomTopic) {
        $this->nomTopic = $nomTopic;
    }

    /**
     * @access public
     * @param int idTopic
     * @param String texte
     * @param String pieceJointe
     * @ParamType idTopic int
     * @ParamType texte String
     * @ParamType pieceJointe String
     */
    public function creerMessage($idTopic, $texte, $pieceJointe) {
        // Not yet implemented
    }

    /**
     * @access public
     * @param int idMessage
     * @ParamType idMessage int
     */
    public function supprimerMessage($idMessage) {
        // Not yet implemented
    }

        /**
     * @access public
     * @param int idSection
     * @return Topic[]
     * @ParamType idSection int
     * @ReturnType Topic[]
     */
    public function getListeTopics($idSection) {
        $args = array('idSection'=>$idSection);
        return $this->getElement($args);
    }
}

?>